home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / Kubuntu 8.10 / kubuntu-8.10-desktop-i386.iso / casper / filesystem.squashfs / var / lib / dpkg / info / libselinux1.postinst < prev    next >
Text File  |  2008-07-15  |  8KB  |  223 lines

  1. #! /bin/sh
  2. #                           -*- Mode: Sh -*- 
  3. # postinst --- 
  4. # Author           : Manoj Srivastava ( srivasta@glaurung.green-gryphon.com ) 
  5. # Created On       : Fri Nov 14 11:25:07 2003
  6. # Created On Node  : glaurung.green-gryphon.com
  7. # Last Modified By : Manoj Srivastava
  8. # Last Modified On : Tue Oct 26 03:31:54 2004
  9. # Last Machine Used: glaurung.internal.golden-gryphon.com
  10. # Update Count     : 13
  11. # Status           : Unknown, Use with caution!
  12. # HISTORY          : 
  13. # Description      : 
  14. # arch-tag: 5401e9ef-39cc-4aee-96a4-61dfb8f32cf7
  15. #  
  16. # This program is free software; you can redistribute it and/or modify
  17. # it under the terms of the GNU General Public License as published by
  18. # the Free Software Foundation; either version 2 of the License, or
  19. # (at your option) any later version.
  20. #
  21. # This program is distributed in the hope that it will be useful,
  22. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  23. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  24. # GNU General Public License for more details.
  25. #
  26. # You should have received a copy of the GNU General Public License
  27. # along with this program; if not, write to the Free Software
  28. # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  29. #
  30.  
  31. # Abort if any command returns an error value
  32. set -e
  33.  
  34. package_name=libselinux1
  35.  
  36. if [ -z "$package_name" ]; then
  37.     print >&2 "Internal Error. Please report a bug."
  38.     exit 1;
  39. fi
  40.  
  41. # This script is called as the last step of the installation of the
  42. # package.  All the package's files are in place, dpkg has already done
  43. # its automatic conffile handling, and all the packages we depend of
  44. # are already fully installed and configured.
  45. # summary of how this script can be called:
  46. #        * <postinst> `configure' <most-recently-configured-version>
  47. #        * <old-postinst> `abort-upgrade' <new version>
  48. #        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
  49. #          <new-version>
  50. #        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
  51. #          <failed-install-package> <version> `removing'
  52. #          <conflicting-package> <version>
  53. # for details, see http://www.debian.org/doc/debian-policy/ or
  54. # the debian-policy package
  55. #
  56. # quoting from the policy:
  57. #     Any necessary prompting should almost always be confined to the
  58. #     post-installation script, and should be protected with a conditional
  59. #     so that unnecessary prompting doesn't happen if a package's
  60. #     installation fails and the `postinst' is called with `abort-upgrade',
  61. #     `abort-remove' or `abort-deconfigure'.
  62.  
  63. # The following idempotent stuff doesn't generally need protecting
  64. # against being run in the abort-* cases.
  65.  
  66. # Install info files into the dir file
  67. ##: install-info --quiet --section "section pattern" "Section Title" \
  68. ##:              --description="Name of the document" /usr/info/${package_name}.info
  69.  
  70. # Create stub directories under /usr/local
  71. ##: if test ! -d /usr/local/lib/${package_name}; then
  72. ##:   if test ! -d /usr/local/lib; then
  73. ##:     if mkdir /usr/local/lib; then
  74. ##:       chown root.staff /usr/local/lib || true
  75. ##:       chmod 2775 /usr/local/lib || true
  76. ##:     fi
  77. ##:   fi
  78. ##:   if mkdir /usr/local/lib/${package_name}; then
  79. ##:     chown root.staff /usr/local/lib/${package_name} || true
  80. ##:     chmod 2775 /usr/local/lib/${package_name} || true
  81. ##:   fi
  82. ##: fi
  83.  
  84. # Ensure the menu system is updated
  85. ##: [ ! -x /usr/bin/update-menus ] || /usr/bin/update-menus
  86.  
  87. # Arrange for a daemon to be started at system boot time
  88. ##: update-rc.d ${package_name} default >/dev/null
  89.  
  90. case "$1" in
  91.   configure)
  92.     # Configure this package.  If the package must prompt the user for
  93.     # information, do it here.
  94.     # Install emacs lisp files
  95.     ##:if [ -x  /usr/lib/emacsen-common/emacs-package-install ]; then
  96.     ##:    /usr/lib/emacsen-common/emacs-package-install $package_name
  97.     ##:fi
  98.  
  99.  
  100.     # Activate menu-methods script
  101.     ##: chmod a+x /etc/menu-methods/${package_name}
  102.  
  103.     # Update ld.so cache
  104.     ldconfig
  105.     if [ -x /sbin/init ] && [ -x /bin/readlink ]; then
  106.         if [ "$(readlink /proc/1/exe 2>/dev/null)" = "/sbin/init" ]; then
  107.              (init u ; sleep 1)
  108.         fi
  109.     fi
  110.  
  111.     # Make our version of a program available
  112.     ##: update-alternatives \
  113.     ##:       --install /usr/bin/program program /usr/bin/alternative 50 \
  114.     ##:       --slave /usr/man/man1/program.1.gz program.1.gz \
  115.     ##:               /usr/man/man1/alternative.1.gz
  116.  
  117.     # Tell ucf that the file in /usr/share/foo is the latest
  118.     # maintainer version, and let it handle how to manage the real
  119.     # confuguration file in /etc. This is how a static configuration
  120.     # file can be handled:
  121.     ##:if which ucf >/dev/null 2>&1; then
  122.     ##:  ucf /usr/share/${package_name}/configuration /etc/${package_name}.conf
  123.     ##:fi
  124.  
  125.     ### We could also do this on the fly. The following is from Tore
  126.     ### Anderson:
  127.     
  128.     #. /usr/share/debconf/confmodule
  129.  
  130.     ### find out what the user answered.
  131.     #  db_get foo/run_on_boot
  132.     #  run_on_boot=$RET
  133.     #  db_stop
  134.  
  135.     ### safely create a temporary file to generate our suggested
  136.     ### configuration file.
  137.     #    tempfile=`tempfile`
  138.     #    cat << _eof > $tempfile
  139.     ### Configuration file for Foo.
  140.  
  141.     ### this was answered by you, the user in a debconf dialogue
  142.     #  RUNONBOOT=$run_on_boot
  143.  
  144.     ### this was not, as it has a sane default value.
  145.     #  COLOUROFSKY=blue
  146.  
  147.     #_eof
  148.  
  149.     ### Note that some versions of debconf do not release stdin, so
  150.     ### the following invocation of ucf may not work, since the stdin
  151.     ### is never coneected to ucfr.
  152.  
  153.     ### now, invoke ucf, which will take care of the rest, and ask
  154.     ### the user if he wants to update his file, if it is modified.
  155.     #ucf $tempfile /etc/foo.conf
  156.  
  157.     ### done! now we'll just clear up our cruft.
  158.     #rm -f $tempfile
  159.  
  160.  
  161.  
  162.     # There are three sub-cases:
  163.     if test "${2+set}" != set; then
  164.       # We're being installed by an ancient dpkg which doesn't remember
  165.       # which version was most recently configured, or even whether
  166.       # there is a most recently configured version.
  167.       :
  168.  
  169.     elif test -z "$2" || test "$2" = "<unknown>"; then
  170.       # The package has not ever been configured on this system, or was
  171.       # purged since it was last configured.
  172.       :
  173.  
  174.     else
  175.       # Version $2 is the most recently configured version of this
  176.       # package.
  177.       :
  178.  
  179.     fi ;;
  180.   abort-upgrade)
  181.     # Back out of an attempt to upgrade this package FROM THIS VERSION
  182.     # to version $2.  Undo the effects of "prerm upgrade $2".
  183.     :
  184.  
  185.     ;;
  186.   abort-remove)
  187.     if test "$2" != in-favour; then
  188.       echo "$0: undocumented call to \`postinst $*'" 1>&2
  189.       exit 0
  190.     fi
  191.     # Back out of an attempt to remove this package, which was due to
  192.     # a conflict with package $3 (version $4).  Undo the effects of
  193.     # "prerm remove in-favour $3 $4".
  194.     :
  195.  
  196.     ;;
  197.   abort-deconfigure)
  198.     if test "$2" != in-favour || test "$5" != removing; then
  199.       echo "$0: undocumented call to \`postinst $*'" 1>&2
  200.       exit 0
  201.     fi
  202.     # Back out of an attempt to deconfigure this package, which was
  203.     # due to package $6 (version $7) which we depend on being removed
  204.     # to make way for package $3 (version $4).  Undo the effects of
  205.     # "prerm deconfigure in-favour $3 $4 removing $6 $7".
  206.     :
  207.  
  208.     ;;
  209.   *) echo "$0: didn't understand being called with \`$1'" 1>&2
  210.      exit 0;;
  211. esac
  212.  
  213. # Install doc base documentation
  214. ##:if which install-docs >/dev/null 2>&1; then
  215. ##:  if [ -e /usr/share/doc-base/${package_name} ]; then
  216. ##:    install-docs -i /usr/share/doc-base/${package_name}
  217. ##:  fi
  218. ##:fi
  219.  
  220. exit 0
  221.